草庐IT

JSON 对象

全部标签

javascript - 如何防止直接访问我的 JSON 服务?

我有一个JSON网络服务来返回要显示在我的Googlemap上的家标记。本质上,http://example.com调用网络服务来找出所有要显示的map标记的位置,如下所示:http://example.com/json/?zipcode=12345它返回一个JSON字符串,例如:{"address":"321MainSt,MountainView,CA,USA",...}所以在我的index.html页面上,我使用该JSON字符串并放置map标记。但是,我不希望发生的是人们直接调用我的JSON网络服务。我只希望http://example.com/index.html能够调用我的ht

javascript - 删除对象的一个​​属性

我有一个看起来像这样的对象。{par1:'par1value',par2:'par2value',par3:'par3value'};我想删除名为par1的属性并单独保存它,所以它看起来像这样varpar1='par1value';{par2:'par2value',par3:'par3value'};谁能推荐一个好的方法来做到这一点 最佳答案 获取属性:varvalue=obj.par1;从对象中删除值:deleteobj.par1;可以找到有关删除的更多详细信息here. 关于jav

javascript - 如何为 JavaScript 对象重载运算符相等性

我已经使用Dojo.declare创建了新对象。如何为对象重载运算符==? 最佳答案 您不能重载==,但是==有一个隐式的.toString()调用,所以无论是什么。toString()返回将允许您有效地重载==(有点):functionfoo(){}foo.prototype.toString=function(){return42;}varx=newfoo();x==42;//true至于如何在Dojo中执行此操作,抱歉,我不使用Dojo,但要点是您获得对创建的任何对象的引用并将thatObject.prototype.toSt

javascript - 访问包含正斜杠的对象属性

我使用json_encodePHP函数创建了JSON。数组项之一的键包含一个正斜杠,当解析JSON时,对象在Chrome的控制台中输出时看起来像这样。Objectcontact/allow_anonymous:"0"menulayout:"horizontal"pages/max_pages:"10"primarycolour:"329e95"websitelogo:"text"我的问题是我似乎无法访问其中包含正斜杠的属性的值。有什么想法吗?由于javascript允许我创建对象,因此我假设有一种方法可以检索值。 最佳答案 只需使用

javascript - 使用 underscore.js 过滤 js 对象

我正在尝试使用underscore.js过滤这个javascript对象,但我不知道为什么它不起作用,它的意思是找到任何包含“how”的问题值。varquestions=[{question:"whatisyourname"},{question:"Howoldareyou"},{question:"whatsisyourmothersname"},{question:"wheredowork/orstudy"},];varmatch=_.filter(questions),function(words){returnwords==="how"});alert(match);//its

javascript - 使用 SetInterval() 调用 Javascript 对象方法

这是一个fiddle.我正在尝试创建一个使用moment.js的倒计时对象(我更喜欢使用Date()的插件)varCountdown=function(endDate){this.endMoment=moment(endDate);this.updateCountdown=function(){varcurrentMoment,thisDiff;currentMoment=moment();thisDiff=(this.endMoment).diff(currentMoment,"seconds");if(thisDiff>0)console.log(thisDiff);else{cl

javascript - 无法从 jQuery ajax 调用获取 json 数据

我正在尝试通过jQueryajax调用从data.php获取数据。我的代码是这样的:varjsonData;$.ajax({url:'data.php',success:function(response){jsonData=response;}});我的data.php文件正在返回json格式的数据,但一些文本是Unicode格式。我在data.php和我的javascript文件上设置了字符集,但仍然无法访问响应的数据对象。有什么想法吗? 最佳答案 尝试将dataType:'json'放入您的ajax调用中:varjsonDat

javascript - 全局变量只是 `window` 对象的属性吗?

每当我在浏览器上看到一个网站时,一个javascript实例正在运行。我可以在控制台(DevTools)中声明一个全局变量;vara=1234567890;此变量已在全局范围内声明,这样我就可以像这样获取变量的值;>a1234567890不过,我也可以这样做;>window.a1234567890我是否正确理解window对象是包含浏览器网站实例中所有全局变量的对象?如果是这样,窗口对象属于什么范围?这让我有点困惑;>windowWindow{top:Window,window:Window,location:Location,external:,...}>window.windowW

javascript - 使用 LoDash 对 Json 数组进行排序

我有一个JSON数组,其一般结构如下:varjson=[{key:'firstName',value:'Bill'},{key:'lastName',value:'Mans'},{key:'phone',value:'123.456.7890'}];在现实中,会有更多的键/值对。无论哪种方式,我都试图使用Lodash按键值对这个数组进行排序。目前,我正在尝试以下操作:_.map(_.sortBy(json,key),_.values);但是,这会导致错误:[ReferenceError:keyisnotdefined]我怀疑是因为docs中所示key没有用引号引起来。不幸的是,我实际上

使用模板文字的 Javascript ES6 console.log 对象

我有一个简单的对象,我想在控制台中显示varobj={name:'John',age:22}如果我输入:console.log(obj)对象{姓名:“约翰”,年龄:22如果我输入:console.log('myobjectis:'+obj)我的对象是:[对象对象]console.log('myobjectis:%o',obj)我的对象是:Object{name:"John",age:22}如何使用模板字面量实现这一点?如果我输入:console.log(`myobjectis:${obj}`)我的对象是:[对象对象] 最佳答案 您可